<?php

include "../../../lib/start.php";

check_session();
check_permission(DOC_PERM);

if(isset($_REQUEST['upd'])){
	// paginazione del referer
	$referer = $_REQUEST['referer'];
    $anno = $_REQUEST['anno'];
    $studente = trim($_REQUEST['studente']);
    $classe = $_REQUEST['classe'];
    $titolo = $_REQUEST['titolo'];
    $abstract = $_REQUEST['abstract'];
    $file = basename( $_FILES['fname']['name']);
        
    /**
     * gestione file nel filesystem
     */
    // recupero la classe per la directory
    $sel_c = "SELECT classe, sezione FROM classi WHERE id_classe = $classe";
    try{
    	$res_c = $db->executeQuery($sel_c);
    } catch (MySQLException $ex){
    	$ex->alert();
    	exit;
    }
    $c = $res_c->fetch_assoc();
    $desc_cls = $c['classe'].$c['sezione'];
    
    $dir = "/www/MW_qPayyGPcq/scuolamediatre.it/download/";
    $dir .= ereg_replace("-", "_", $anno);
    $dir .= "/".$desc_cls."/";
    // inserimento
    if($_REQUEST['funzione'] == 1){
	    if(!file_exists($dir)){
	    	if(!mkdir($dir)){
	    		print "Tentativo di creazione della directory ".$dir." fallito";
	    		exit;
	    	}
	    }
	    $target_path = $dir . basename( $_FILES['fname']['name']);
	    //print $target_path;
	    if(move_uploaded_file($_FILES['fname']['tmp_name'], $target_path)) {
		    //echo "The file ".  basename( $_FILES['fname']['name']). " has been uploaded";
		} else{
		    echo "There was an error uploading the file, please try again!";
		    exit;
		}
    }
    // cancellazione
    else if($_REQUEST['funzione'] == 2){
    	chdir($dir);
    	if(file_exists($_REQUEST['fname']))
    		unlink($dir.$_REQUEST['fname']);
    	else{
    		print("Attenzione: il file ".$dir.$_REQUEST['fname']." sembra non esistere. Verificare il path");
    		exit;
    	}
    }
    // rename
   	else if($_REQUEST['funzione'] == 3){
   		//print "funzione 3";
   		chdir($dir);
    	if(file_exists($_REQUEST['oldfile'])){
    		if(!rename($_REQUEST['oldfile'], $_REQUEST['fname'])){
    			print "Tentativo di rinominare ".$_REQUEST['oldfile']." in ".$_REQUEST['fname']." fallito";
    			exit;
    		}
    	}
    	else{
    		print("Attenzione: il file ".$dir.$_REQUEST['oldfile']." sembra non esistere. Verificare il path");
    		exit;
    	}
   	}
    
    switch($_REQUEST['funzione']){
        case 1:     // inserimento
            $statement = "INSERT INTO stud_works (anno, data_inserimento, autore, _classe, classe, owner, abstract, titolo, file, dw_counter) VALUES ('".ereg_replace("-", "/", $anno)."', NOW(), '$studente', '$desc_cls', $classe, ".$_SESSION['__user__']->getUid().", '$abstract', '$titolo', '$file', 0)";
            //print $statement;
            $msg = "Il file &egrave; stato inserito correttamente";
            break;
        case 2:     // cancellazione
            $statement = "DELETE FROM stud_works WHERE id_work = ".$_REQUEST['_i'];
            //print $statement;
            $msg = "Il file &egrave; stato cancellato correttamente";
            break;
        case 3:     // modifica
            $statement = "UPDATE stud_works SET autore = '$studente', abstract = '$abstract', titolo = '$titolo', file = '".$_REQUEST['fname']."' WHERE id_work = ".$_REQUEST['_i'];
            //print $statement;
            $msg = "Il file &egrave; stato aggiornato correttamente";
            break;
    }
	try{
    	$recordset = $db->executeQuery($statement);
    } catch (MySQLException $ex){
        $msg = "ko|".$ex->getMessage()."|".$ex->getQuery();
        print $msg;
        exit;
    }
}
else{
	// per la paginazione del REFERER
	$referer = $_SERVER['HTTP_REFERER'];
}
	
if($_REQUEST['_i'] != 0){
	$_i = $_REQUEST['_i'];
	$sel_work = "SELECT * FROM stud_works WHERE id_work = ".$_REQUEST['_i'];
	$r_work = $db->executeQuery($sel_work);
	$current_work = $r_work->fetch_assoc();
}
else{
	$_i = 0;
}

// anni scolastici
if($_REQUEST['_i'] != 0)
	$sel_anni = "SELECT id_anno, descrizione FROM anni WHERE descrizione = '".ereg_replace("/", "-", $current_work['anno'])."'";
else
	$sel_anni = "SELECT id_anno, descrizione FROM anni ORDER BY id_anno DESC";
$res_anni = $db->executeQuery($sel_anni);

// classi 
if($_REQUEST['_i'] != 0)
	$sel_classi = "SELECT id_classe, classe, sezione FROM classi WHERE id_classe = ".$current_work['classe'];
else
	$sel_classi = "SELECT id_classe, classe, sezione FROM classi ORDER BY sezione, classe";
//print $sel_classi;
$res_classi = $db->executeQuery($sel_classi);

include "dettaglio_lavoro.html.php";

?>